(1) Field of the Invention
The present invention relates to a remote control signal reception controller, and especially relates to a remote control signal reception controller that receives remote control signals output from a remote control signal sender and transfers data included in the received signals to a master control device.
(2) Description of the Prior Art
These days a variety of electric appliances that may be controlled by remote control signals are produced and sold.
A remote control signal is explained below.
FIG. 1 shows the format of a remote control signal.
In this specification, a remote control signal refers to a signal output from a remote control signal sender.
A remote control signal includes three parts that are leader part 101, data part 102, and trailer part 103.
Data part 102 includes manufacturer code 104, parity 105, appliance code 106, and data code 107, each of which is represented by a combination of bit data whose values are "0" or "1". Hereinafter, the data represented by data part 102 will be called "control data".
The format adopted in FIG. 1 is the format recommended by "Electric Appliance Association (Kaden Seihin Kyokai)" in Japan. In Japan, electric appliance manufacturers may use this format or use an original format. In other countries, electric appliance manufactures use a standardized format.
FIG. 2 shows the timing structures of the signals in leader part 101, data part 102, and trailer part 103.
A conventional remote control signal reception controller that receives a remote control signal, the format of which is described above, is explained with reference to FIGS. 3 and 4.
FIG. 3 shows the construction of a conventional remote control signal reception controller.
A remote control signal reception system includes remote control signal reception controller 2500 and CPU 2517.
Remote control signal reception controller 2500 includes edge detection unit 2501, edge interval measurement counter 2502, remote control signal identification unit 2503, received data shift register 2507, data reception counter 2508, received data storage unit 2515, and interrupt control unit 2516. Edge detection unit 2501 detects that the level of an input signal changes between low and high. Edge interval measurement counter 2502 measures the intervals between the edges detected by edge detection unit 2501. Remote control signal identification unit 2503 identifies the leader that represents the beginning of a remote control signal in the adopted format, the trailer that represents the end of the remote control signal, and the bit data values "0" and "1" in the data part, from the values measured by edge interval measurement counter 2502 when edge detection unit 2501 detects an edge. Received data shift register 2507 shifts and stores the bit data whose value has been identified as "0" or "1" by remote control signal identification unit 2503. Data reception counter 2508 counts the number of bits of the bit data that received data shift register 2507 stores. Received data storage unit 2515 stores the data transferred from received data shift register 2507 and outputs data when accessed by from CPU 2517. Interrupt control unit 2516 generates an interrupt signal for CPU 2517.
Remote control signal identification unit 2503 includes leader detection unit 2504 for detecting a leader, data judgement unit 2505 for judging the value of bit data as "0" or "1", and trailer detection unit 2506 for detecting a trailer.
CPU 2517 is the master control device that obtains received data from remote control signal reception controller 2500 and controls devices to which the remote control signal reception system is connected and the components in the devices.
FIG. 4 is a flowchart showing the procedure for processing a remote control code that a conventional remote control signal reception controller receives.
A remote control code refers to the parts of a remote control signal from the leader part to the trailer part.
Data reception counter 2508 and edge interval measurement counter 2502 are initialized to "0" (Step S2601). Remote control signal reception controller 2500 waits for a signal to be input from a remote control signal sender (Step S2602).
Edge interval measurement counter 2502 continues to increment the counter value until edge detection unit 2501 detects an edge of an input signal (Step S2603).
When edge detection unit 2501 detects an edge, edge interval measurement counter 2502 outputs the counter values to remote control signal identification unit 2503 (Step S2604). Then edge interval measurement counter 2502 is initialized (Step S2605).
Remote control signal identification unit 2503 selects the next process according to the input counter values (Step S2606).
When the counter values show that a leader is detected, remote control signal identification unit 2503 informs interrupt control unit 2516 of the leader detection, and interrupt control unit 2516 interrupts CPU 2517 in order to inform CPU 2517 of the leader detection (Step S2607). Remote control signal identification unit 2503 waits for the next edge to be detected (Step S2602).
When the counter values show bit data whose value is "0" or "1" is detected (Step S2606), data judgement unit 2505 judges whether the value is "0" or "1". Remote control signal identification unit 2503 transfers the received bit data to received data shift register 2507 (Step S2608), and has data reception counter 2508 start to incrementing the counter value (Step S2609).
When the value of data reception counter 2508 reaches "n", that is, the capacity of received data shift register 2507 (Step S2610), data reception counter 2508 transfers the bit data stored in received data shift register 2507 to received data storage unit 2515 (Step S2611). Data reception counter 2508 is initialized to "0" (Step S2612). Data reception counter 2508 informs interrupt control unit 2516 that "n" bits of bit data have been received, and interrupt control unit 2516 interrupts CPU 2517 in order to inform CPU 2517 that "n" bits of bit data is received (Step S2613). Remote control signal identification unit 2503 waits for the next edge to be detected (Step S2602).
When the value of data reception counter 2508 does not reach "n" (Step S2610), no operations at Steps S2611 to 2613 is performed. Remote control signal identification unit 2503 waits for the next edge to be detected (Step S2602).
When the counter values input into remote control signal identification unit 2503 show that a trailer is detected (Step S2606), remote control signal identification unit 2503 informs interrupt control unit 2516 of the trailer detection, and interrupt control unit 2516 interrupts CPU 2517 in order to inform CPU 2517 of the trailer detection (Step S2614).
When interrupted and informed of the reception of "n" bits of bit data, CPU 2517 obtains the "n" bits of received bit data from received data storage unit 2515, and stores the obtained data in a memory connected to CPU 2517.
CPU 2517 regards the process from a leader detection interrupt to a trailer detection interrupt as the reception of one piece of remote control signal data. In other words, CPU 2517 controls devices to which the remote control signal reception system is connected and the components in the devices according to the value of the control data, that is, the received bit data stored in the memory.
A leader detection interrupt, a trailer detection interrupt, and an "n" bits of bit data reception interrupt are all necessary for CPU 2517 to obtain control data.
As described above, a conventional remote control signal reception controller transfers all of the received bit data to the CPU.
Generally speaking, when the user presses a remote control signal sender button, the remote control signal sender transmits the same remote control signal code repeatedly. Even when receiving the same remote control signal code repeatedly, a conventional remote control signal reception controller repeatedly interrupts the CPU to request the CPU to read the same received data.
As a result, a conventional remote control signal reception controller requires the CPU to acknowledge the interrupt and to read the same received bit data repeatedly, so that the load on the CPU unnecessarily increases.
The CPU controls devices to which the remote control signal reception system is connected and the components in the devices. As a result, the increased load on the CPU delays the operation of the devices.
In a digital device, for instance, in a digital broadcast receiver, the components are controlled by the CPU, so that an increased load on the CPU has an especially pronounced effect in lowering the performance of the device.